package com.ruoyi.develop.goodsSalebuy.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.develop.goodsOrderIn.domain.GoodsOrderIn;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 采购单对象 goods_salebuy
 *
 * @author qh
 * @date 2024-08-09
 */
public class GoodsSalebuy extends BaseEntity {
private static final long serialVersionUID=1L;

    /** $column.columnComment */
    private String id;

    /** 销售类别 (1:零散销售; 2:项目销售) */
    @Excel(name = "销售类别 (1:零散销售; 2:项目销售)")
    private String type;

    /** 产品id */
    @Excel(name = "产品id")
    private String goodsId;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String goodsName;

    /** 产品规格明细 */
    @Excel(name = "产品规格明细")
    private String goodsBrand;

    /** 产品型号 */
    @Excel(name = "产品型号")
    private String goodModel;

    /** 销售单价（订单单价） */
    @Excel(name = "销售单价", readConverterExp = "订=单单价")
    private BigDecimal goodsUnitPrice;

    /** 销售数量 */
    @Excel(name = "销售数量")
    private BigDecimal goodsCount;

    /** 总价（订单总价） */
    @Excel(name = "总价", readConverterExp = "订=单总价")
    private BigDecimal goodsTotalPrice;

    /** 成本单价 */
    @Excel(name = "成本单价")
    private BigDecimal goodsBuyPrice;

    /** 成本金额（总成本价） */
    @Excel(name = "成本金额", readConverterExp = "总=成本价")
    private BigDecimal goodsBuyTotal;

    /** 销售利润 */
    @Excel(name = "销售利润")
    private BigDecimal goodsProfit;

    /** 销售日期 */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    @Excel(name = "销售日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date saleDate;

    /** 供应商 */
    @Excel(name = "供应商")
    private String supplierId;

    /** 供应商名称 */
    @Excel(name = "供应商名称")
    private String supplierName;

    /** 客户 */
    @Excel(name = "客户")
    private String customerId;

    /** 客户名称 */
    @Excel(name = "客户名称")
    private String customerName;

    /** 销售人 */
    @Excel(name = "销售人")
    private String saleId;

    /** 销售人姓名 */
    @Excel(name = "销售人姓名")
    private String saleName;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 订单编号 */
    @Excel(name = "订单编号")
    private String projectId;

    /** 订单名称 */
    @Excel(name = "订单名称")
    private String projectName;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String status;

    /** 部门ID */
    @Excel(name = "部门ID")
    private String deptId;

    /** 部门名称 */
    @Excel(name = "部门名称")
    private String deptName;

    /** 请购数量 */
    @Excel(name = "请购数量")
    private BigDecimal counts;

    /** 剩余数量 */
    @Excel(name = "剩余数量")
    private BigDecimal shengyu;

    /** 是否发货 */
    @Excel(name = "是否发货")
    private String isfahuo;

    /** 发货时间 */
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    @Excel(name = "发货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date fahuoDate;

    /** 产品编码 */
    @Excel(name = "产品编码")
    private String goodsCode;

    /** 吨位 */
    @Excel(name = "吨位")
    private BigDecimal dun;

    /** 单据号 */
    @Excel(name = "单据号")
    private String nos;

    /** 是否自制(1:自制; 2:请购; 3:外协) */
    @Excel(name = "是否自制(1:自制; 2:请购; 3:外协)")
    private String isdo;

    /** 采购单id */
    @Excel(name = "采购单id")
    private String mainId;

    private String daohuoId;
    /** 请购单id */
    @Excel(name = "请购单id")
    private String qinggouId;

    private String unit;

    private String cgallid;
    private String daohuono;

    private List<GoodsSalebuy> columnsBuy;

    private List<GoodsOrderIn> columns;

    private String rukuId;
    private String rukuno;
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date rukudate;
    private String rukuren;
    private String caigouno;
    private String fapiaoId;
    private String fapiaono;
    private String dakuanId;
    private String dakuanno;

    private String dakuandate;
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    private Date zhijianDate;
    private String zhijianName;
    private String isZhijian;
    private String zhijiandan;
    private String  goodsSaleId;
    private String  projectNo;

    private String  daohuoStatus;

    private String  tuihuoType;

    private String  orderCount;
    private String  pleaseBuyCount;
    private String  lvdoId;
    private String  auditBy;

    /** 入库明细id  */
    private String rukumingxiId;

    public String getRukumingxiId() {
        return rukumingxiId;
    }

    public void setRukumingxiId(String rukumingxiId) {
        this.rukumingxiId = rukumingxiId;
    }

    public String getAuditBy() {
        return auditBy;
    }

    public void setAuditBy(String auditBy) {
        this.auditBy = auditBy;
    }

    public String getLvdoId() {
        return lvdoId;
    }

    public void setLvdoId(String lvdoId) {
        this.lvdoId = lvdoId;
    }

    public String getOrderCount() {
        return orderCount;
    }

    public void setOrderCount(String orderCount) {
        this.orderCount = orderCount;
    }

    public String getPleaseBuyCount() {
        return pleaseBuyCount;
    }

    public void setPleaseBuyCount(String pleaseBuyCount) {
        this.pleaseBuyCount = pleaseBuyCount;
    }

    private BigDecimal  goodsBuyPriceAll;

    public BigDecimal getGoodsBuyPriceAll() {
        return goodsBuyPriceAll;
    }

    public void setGoodsBuyPriceAll(BigDecimal goodsBuyPriceAll) {
        this.goodsBuyPriceAll = goodsBuyPriceAll;
    }

    public String getTuihuoType() {
        return tuihuoType;
    }

    public void setTuihuoType(String tuihuoType) {
        this.tuihuoType = tuihuoType;
    }

    public String getDaohuoStatus() {
        return daohuoStatus;
    }

    public void setDaohuoStatus(String daohuoStatus) {
        this.daohuoStatus = daohuoStatus;
    }

    public String getGoodsSaleId() {
        return goodsSaleId;
    }

    public void setGoodsSaleId(String goodsSaleId) {
        this.goodsSaleId = goodsSaleId;
    }

    public String getProjectNo() {
        return projectNo;
    }

    public String getGoodsCode() {
        return goodsCode;
    }

    public void setGoodsCode(String goodsCode) {
        this.goodsCode = goodsCode;
    }

    public void setProjectNo(String projectNo) {
        this.projectNo = projectNo;
    }
    public Date getZhijianDate() {
        return zhijianDate;
    }

    public void setZhijianDate(Date zhijianDate) {
        this.zhijianDate = zhijianDate;
    }

    public String getZhijianName() {
        return zhijianName;
    }

    public void setZhijianName(String zhijianName) {
        this.zhijianName = zhijianName;
    }

    public String getIsZhijian() {
        return isZhijian;
    }

    public void setIsZhijian(String isZhijian) {
        this.isZhijian = isZhijian;
    }

    public String getZhijiandan() {
        return zhijiandan;
    }

    public void setZhijiandan(String zhijiandan) {
        this.zhijiandan = zhijiandan;
    }

    public String getCaigouno() {
        return caigouno;
    }

    public void setCaigouno(String caigouno) {
        this.caigouno = caigouno;
    }

    public String getFapiaoId() {
        return fapiaoId;
    }

    public void setFapiaoId(String fapiaoId) {
        this.fapiaoId = fapiaoId;
    }

    public String getFapiaono() {
        return fapiaono;
    }

    public void setFapiaono(String fapiaono) {
        this.fapiaono = fapiaono;
    }

    public String getDakuanId() {
        return dakuanId;
    }

    public void setDakuanId(String dakuanId) {
        this.dakuanId = dakuanId;
    }

    public String getDakuanno() {
        return dakuanno;
    }

    public void setDakuanno(String dakuanno) {
        this.dakuanno = dakuanno;
    }

    public String getDakuandate() {
        return dakuandate;
    }

    public void setDakuandate(String dakuandate) {
        this.dakuandate = dakuandate;
    }

    public String getRukuId() {
        return rukuId;
    }

    public void setRukuId(String rukuId) {
        this.rukuId = rukuId;
    }

    public String getRukuno() {
        return rukuno;
    }

    public void setRukuno(String rukuno) {
        this.rukuno = rukuno;
    }

    public Date getRukudate() {
        return rukudate;
    }

    public void setRukudate(Date rukudate) {
        this.rukudate = rukudate;
    }

    public String getRukuren() {
        return rukuren;
    }

    public void setRukuren(String rukuren) {
        this.rukuren = rukuren;
    }

    public String getDaohuono() {
        return daohuono;
    }

    public void setDaohuono(String daohuono) {
        this.daohuono = daohuono;
    }

    public String getDaohuoId() {
        return daohuoId;
    }

    public void setDaohuoId(String daohuoId) {
        this.daohuoId = daohuoId;
    }

    public List<GoodsSalebuy> getColumnsBuy() {
        return columnsBuy;
    }

    public String getCgallid() {
        return cgallid;
    }

    public void setCgallid(String cgallid) {
        this.cgallid = cgallid;
    }

    public void setColumnsBuy(List<GoodsSalebuy> columnsBuy) {
        this.columnsBuy = columnsBuy;
    }

    public List<GoodsOrderIn> getColumns() {
        return columns;
    }

    public void setColumns(List<GoodsOrderIn> columns) {
        this.columns = columns;
    }

    public String getUnit() {
        return unit;
    }

    public void setUnit(String unit) {
        this.unit = unit;
    }

    public void setId(String id)
            {
            this.id = id;
            }

    public String getId()
            {
            return id;
            }
    public void setType(String type)
            {
            this.type = type;
            }

    public String getType()
            {
            return type;
            }
    public void setGoodsId(String goodsId)
            {
            this.goodsId = goodsId;
            }

    public String getGoodsId()
            {
            return goodsId;
            }
    public void setGoodsName(String goodsName)
            {
            this.goodsName = goodsName;
            }

    public String getGoodsName()
            {
            return goodsName;
            }
    public void setGoodsBrand(String goodsBrand)
            {
            this.goodsBrand = goodsBrand;
            }

    public String getGoodsBrand()
            {
            return goodsBrand;
            }
    public void setGoodModel(String goodModel)
            {
            this.goodModel = goodModel;
            }

    public String getGoodModel()
            {
            return goodModel;
            }
    public void setGoodsUnitPrice(BigDecimal goodsUnitPrice)
            {
            this.goodsUnitPrice = goodsUnitPrice;
            }

    public BigDecimal getGoodsUnitPrice()
            {
            return goodsUnitPrice;
            }
    public void setGoodsCount(BigDecimal goodsCount)
            {
            this.goodsCount = goodsCount;
            }

    public BigDecimal getGoodsCount()
            {
            return goodsCount;
            }
    public void setGoodsTotalPrice(BigDecimal goodsTotalPrice)
            {
            this.goodsTotalPrice = goodsTotalPrice;
            }

    public BigDecimal getGoodsTotalPrice()
            {
            return goodsTotalPrice;
            }
    public void setGoodsBuyPrice(BigDecimal goodsBuyPrice)
            {
            this.goodsBuyPrice = goodsBuyPrice;
            }

    public BigDecimal getGoodsBuyPrice()
            {
            return goodsBuyPrice;
            }
    public void setGoodsBuyTotal(BigDecimal goodsBuyTotal)
            {
            this.goodsBuyTotal = goodsBuyTotal;
            }

    public BigDecimal getGoodsBuyTotal()
            {
            return goodsBuyTotal;
            }
    public void setGoodsProfit(BigDecimal goodsProfit)
            {
            this.goodsProfit = goodsProfit;
            }

    public BigDecimal getGoodsProfit()
            {
            return goodsProfit;
            }
    public void setSaleDate(Date saleDate)
            {
            this.saleDate = saleDate;
            }

    public Date getSaleDate()
            {
            return saleDate;
            }
    public void setSupplierId(String supplierId)
            {
            this.supplierId = supplierId;
            }

    public String getSupplierId()
            {
            return supplierId;
            }
    public void setSupplierName(String supplierName)
            {
            this.supplierName = supplierName;
            }

    public String getSupplierName()
            {
            return supplierName;
            }
    public void setCustomerId(String customerId)
            {
            this.customerId = customerId;
            }

    public String getCustomerId()
            {
            return customerId;
            }
    public void setCustomerName(String customerName)
            {
            this.customerName = customerName;
            }

    public String getCustomerName()
            {
            return customerName;
            }
    public void setSaleId(String saleId)
            {
            this.saleId = saleId;
            }

    public String getSaleId()
            {
            return saleId;
            }
    public void setSaleName(String saleName)
            {
            this.saleName = saleName;
            }

    public String getSaleName()
            {
            return saleName;
            }
    public void setDelFlag(String delFlag)
            {
            this.delFlag = delFlag;
            }

    public String getDelFlag()
            {
            return delFlag;
            }
    public void setProjectId(String projectId)
            {
            this.projectId = projectId;
            }

    public String getProjectId()
            {
            return projectId;
            }
    public void setProjectName(String projectName)
            {
            this.projectName = projectName;
            }

    public String getProjectName()
            {
            return projectName;
            }
    public void setStatus(String status)
            {
            this.status = status;
            }

    public String getStatus()
            {
            return status;
            }
    public void setDeptId(String deptId)
            {
            this.deptId = deptId;
            }

    public String getDeptId()
            {
            return deptId;
            }
    public void setDeptName(String deptName)
            {
            this.deptName = deptName;
            }

    public String getDeptName()
            {
            return deptName;
            }
    public void setCounts(BigDecimal counts)
            {
            this.counts = counts;
            }

    public BigDecimal getCounts()
            {
            return counts;
            }
    public void setShengyu(BigDecimal shengyu)
            {
            this.shengyu = shengyu;
            }

    public BigDecimal getShengyu()
            {
            return shengyu;
            }
    public void setIsfahuo(String isfahuo)
            {
            this.isfahuo = isfahuo;
            }

    public String getIsfahuo()
            {
            return isfahuo;
            }
    public void setFahuoDate(Date fahuoDate)
            {
            this.fahuoDate = fahuoDate;
            }

    public Date getFahuoDate()
            {
            return fahuoDate;
            }

    public void setDun(BigDecimal dun)
            {
            this.dun = dun;
            }

    public BigDecimal getDun()
            {
            return dun;
            }
    public void setNos(String nos)
            {
            this.nos = nos;
            }

    public String getNos()
            {
            return nos;
            }
    public void setIsdo(String isdo)
            {
            this.isdo = isdo;
            }

    public String getIsdo()
            {
            return isdo;
            }
    public void setMainId(String mainId)
            {
            this.mainId = mainId;
            }

    public String getMainId()
            {
            return mainId;
            }
    public void setQinggouId(String qinggouId)
            {
            this.qinggouId = qinggouId;
            }

    public String getQinggouId()
            {
            return qinggouId;
            }

    @Override
    public String toString(){
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id",getId())
            .append("type",getType())
            .append("goodsId",getGoodsId())
            .append("goodsName",getGoodsName())
            .append("goodsBrand",getGoodsBrand())
            .append("goodModel",getGoodModel())
            .append("goodsUnitPrice",getGoodsUnitPrice())
            .append("goodsCount",getGoodsCount())
            .append("goodsTotalPrice",getGoodsTotalPrice())
            .append("goodsBuyPrice",getGoodsBuyPrice())
            .append("goodsBuyTotal",getGoodsBuyTotal())
            .append("goodsProfit",getGoodsProfit())
            .append("saleDate",getSaleDate())
            .append("supplierId",getSupplierId())
            .append("supplierName",getSupplierName())
            .append("customerId",getCustomerId())
            .append("customerName",getCustomerName())
            .append("saleId",getSaleId())
            .append("saleName",getSaleName())
            .append("delFlag",getDelFlag())
            .append("createBy",getCreateBy())
            .append("createTime",getCreateTime())
            .append("updateBy",getUpdateBy())
            .append("updateTime",getUpdateTime())
            .append("remark",getRemark())
            .append("projectId",getProjectId())
            .append("projectName",getProjectName())
            .append("status",getStatus())
            .append("deptId",getDeptId())
            .append("deptName",getDeptName())
            .append("counts",getCounts())
            .append("shengyu",getShengyu())
            .append("isfahuo",getIsfahuo())
            .append("fahuoDate",getFahuoDate())
            .append("goodsCode",getGoodsCode())
            .append("dun",getDun())
            .append("nos",getNos())
            .append("isdo",getIsdo())
            .append("mainId",getMainId())
            .append("qinggouId",getQinggouId())
        .toString();
    }
}
